// 开心的金明 01背包
#include <iostream>
using namespace std;
const int MAXN=30000;
const int MAXM=25;
int n,m;
int v[MAXM+1],p[MAXM+1];
int maxp[MAXN+1];

int main(){
    cin>>n>>m;
    for(int i=1;i<=m;i++) cin>>v[i]>>p[i];

    for(int i=1;i<=m;i++)
        for(int v1=n;v1>=v[i];v1--)
            if (maxp[v1]<maxp[v1-v[i]]+v[i]*p[i]) maxp[v1]=maxp[v1-v[i]]+v[i]*p[i];
    
    cout<<maxp[n];

}